export default {
    getShader: function () {
        return `
        attribute vec4 a_Position;
        uniform vec4 u_PosiMove;
        uniform vec2 u_PointSize;
        uniform float u_Set;
    
        varying float v_Set;
        void main(){
            float sizeStart = u_PointSize.x;
            float sizeEnd = u_PointSize.y;
    
            vec2 moveStart = vec2(u_PosiMove.x, u_PosiMove.y);
            vec2 moveEnd = vec2(u_PosiMove.z, u_PosiMove.w);
            vec4 moveCur = vec4((moveEnd - moveStart) * u_Set, 0.0, 0.0) + vec4(moveStart, 0.0, 1.0);
    
            gl_Position = a_Position + moveCur;
            gl_PointSize = u_Set * (sizeEnd - sizeStart) + sizeStart;
    
            v_Set = u_Set;
        }
        `;
    }
}